The present invention relates to digital systems in which a controller has to serve a plurality of peripheral modules.
In digital systems, such as computers, peripheral modules can ask for service from a central module, i.e. a controller; by means of interrupts. In prior art systems, for example in personal computers of industrial standards, there is a dedicated interrupt line allocated to all peripheral modules that are to be given the option to request an interrupt. For example, the personal computers have 15 interrupt lines. Although this is usually adequate for PCs, in other kinds of environments, such as mobile services switching centers and particularly transcoders coupled to them, need often arises to serve even hundreds of peripheral modules requesting an interrupt. To arrange a separate interrupt line for such a large number of peripheral modules would definitely be irrational.
A large number of peripheral modules are also served in local area networks. In an Ethernet type of a network, for example, a connecting cable has three states used to identify the number of modules that have reserved the cable: zero, one, or more than one. Most digital circuits only handle two voltage states, which means that carrying out a service request the way it is done in the Ethernet network considerably increases the cost of the apparatus. Another drawback of reserving turns in this manner is that only a fraction of the connecting line transfer capacity can in practice be utilized, because if several modules ask for service at the same time, the service requests of all the modules will be futile, with the result that they all have to wait for a random time before any new attempts.
It is possible to prevent an Ethernet type of apparatus from becoming blocked in systems that are based on reserving turns, for example in a Token Ring network in which the turn circulates from one device to another in the system. This arrangement, too, is expensive if applied to a plurality of modules, because the logic that is used to handle the interrupt turn must be installed in every device.
A method for arranging an interrupt option for several peripheral modules is proposed in the article "Internal communications in a multiprocessor ISDN PBX", Carlos Hirsch & Luis Rojas, Computer Communications, Vol. 18, Number 5, May 1995. In the system described in the article, each peripheral module is allocated a predetermined time-slot during which it may request an interrupt. As far as the connections between peripheral modules are concerned, this system, too, is rather burdensome to implement due to the handling of interrupts requiring log.sub.2 n lines if there are n peripheral modules.